作者:mobiledu2502884677 | 来源:互联网 | 2023-08-27 07:29
篇首语:本文由编程笔记#小编为大家整理,主要介绍了SpringBoot课程和新书《SpringBoot入门与实践》延迟发版相关的知识,希望对你有一定的参考价值。
篇首语:本文由编程笔记#小编为大家整理,主要介绍了Spring Boot课程和新书《Spring Boot入门与实践》延迟发版相关的知识,希望对你有一定的参考价值。
1、新书延迟出版
新书即将出版之际,需要稍微延迟,延迟原因:
本想Spring Boot新书可以快速发版,没有想到Spring boot 2.0GA 即将发布,新书打算延迟2周到1个月左右发版。
将书籍中的版本从1.5.9升级到目前的RC版本,做兼容测试和部分修正,因此延迟发版2周到1个月左右。
2、相关课程说明
录播课程也在努力中,目前录播了15个小时左右的课程,讲到数据库事务。打算基础入门免费的形式提供,大约25节课,平均40分钟一节,大约1100分钟(18小时)全部免费。
下面是目录:
其中红色的目录章节以免费课程提供,主要是框架基础,让入门新手学学学。
而蓝色以收费形式提供,主要为企业的应用为主,支持在线答疑,价格预计在100-300之间波动,不造成新手的经济负担。
第1章 Spring Boot来临 2
1.1 Spring的历史 2
1.2 注解还是XML? 3
1.3 Spring Boot的优点 4
1.4 传统Spring MVC和Spring Boot的对比 4
第2章 聊聊开发环境搭建和基本开发 12
2.1 搭建Spring Boot开发环境 12
2.1.1 搭建Eclipse开发环境 12
2.1.2 搭建IntelliJ IDEA开发环境 16
2.2 Spring Boot的依赖和自动配置 18
2.3 使用自定义配置 22
2.4 开发自己的Spring Boot项目 24
第3章 全注解下的Spring IoC 27
3.1 IoC容器的简介 27
3.2 装配你的Bean 31
3.2.1 通过扫描装配你的Bean 31
3.2.2 自定义第三方Bean 36
3.3 依赖注入 37
3.3.1 注解@Autowired 39
3.3.2 消除歧义性——@Primary和@Quelifier 41
3.3.3 带有参数的构造方法类的装配 42
3.4 生命周期 43
3.5 使用属性文件 49
3.6 条件装配Bean 52
3.7 Bean的作用域 54
3.8 使用@Profile 55
3.9 引入XML配置Bean 57
3.10 使用Spring EL 58
第4章 开始约定编程——Spring AOP 61
4.1 约定编程 61
4.1.1 约定 61
4.1.2 ProxyBean的实现 66
4.1.3 总结 69
4.2 AOP的概念 70
4.2.1 为什么使用AOP 70
4.2.1 AOP 术语和流程 73
4.3 AOP开发详解 75
4.3.1 确定连接点 75
4.3.2 开发切面 75
4.3.3 切点定义 76
4.3.4 测试AOP 78
4.3.5 环绕通知 81
4.3.6引入 83
4.3.7 通知获取参数 85
4.3.8 织入 86
4.4 多个切面 88
第5章访问数据库 94
5.1 配置数据源 94
5.1.1 启动默认数据源 94
5.1.2 配置自定义数据源 95
5.2 使用JdbcTemplate操作数据库 99
5.3 使用JPA(Hibernate)操作数据 103
5.3.1 概述 103
5.3.2 开发JPA 103
5.4 整合MyBatis框架 109
5.4.1 MyBatis简介 110
5.4.2 MyBatis的配置 110
5.4.3 Spring Boot整合MyBatis 115
5.4.4 MyBatis的其他配置 118第6章 聊聊数据库事务处理 122
6.1 JDBC的数据库事务 123
6.2 Spring声明式事务的使用 125
6.2.1 Spring声明式数据库事务约定 125
6.2.2 @Transactional的配置项 127
6.2.3 Spring事务管理器 129
6.2.4 测试数据库事务 130
6.3 隔离级别 135
6.3.1 数据库事务的知识 135
6.3.2 隔离级别 137
6.4 传播行为 141
6.4.1 传播行为的定义 142
6.4.2 测试传播行为 143
6.5 @Transactional自调用失效问题 148
第7章 使用性能利器——Redis 154
7.1 spring data redis项目简介 155
7.1.1 spring data redis项目的设计 155
7.1.2 RedisTemplate 156
7.1.3 Spring对Redis数据类型操作的封装 160
7.1.4 SessionCallback和RedisCallback接口 161
7.2 在Spring Boot中配置和使用Redis 163
7.2.1 在Spring Boot中配置Redis 163
7.2.2 操作Redis数据类型 164
7.3 Redis的一些特殊用法 169
7.3.1 使用Redis事务 170
7.3.2 使用Redis流水线 171
7.3.3 使用Redis发布订阅 172
7.3.4 使用Lua脚本 176
7.4 使用Spring缓存注解操作Redis 179
7.4.1 缓存管理器和缓存的启用 179
7.4.2 开发缓存注解 181
7.4.3 测试缓存注解 187
7.4.4 缓存注解自调用失效问题 190
7.4.5 缓存脏数据说明 190
7.4.6 自定义缓存管理器 191
第8章 文档数据库——MongoDB 194
8.1 配置MongoDB 195
8.2 使用MongoTemplate实例 196
8.2.1 搭建开发环境 196
8.2.1 使用MongoTemplate操作文档 200
8.3 使用JPA 206
8.3.1 基本用法 206
8.3.2 使用自定义查询 208第9章 初识Spring MVC 211
9.1 Spring MVC框架的设计 211
9.2 Spring MVC流程 212
9.3 定制Spring MVC的初始化 220
9.4 Spring MVC实例 221
9.4.1 开发控制器 221
9.4.2 视图和视图渲染 222第10章 深入Spring MVC开发 227
10.1 处理器映射 227
10.2 获取控制器参数 228
10.2.1 在无注解下获取参数 228
10.2.2 使用@RequestParam获取参数 229
10.2.3 传递数组 230
10.2.4 传递JSON 231
10.2.5 通过URL传递参数 234
10.2.6 获取格式化参数参数 235
10.3 自定义参数转换规则 237
10.3.1 处理器获取参数逻辑 237
10.3.2 一对一转换器(Converter) 241
10.3.3 GenericConverter集合和数组转换 242
10.4 数据验证 243
10.4.1 JSR-303 验证 243
10.4.2 参数验证机制 247
10.5 数据模型 251
10.6 视图和视图解析器 253
10.6.1 视图设计 253
10.6.2 视图实例——导出PDF文件 255
10.7 文件上传 259
10.7.1 Spring MVC对文件上传的支持 259
10.7.2 开发文件上传功能 261
10.8 拦截器 264
10.8.1 拦截器的设计 264
10.8.2 开发拦截器 265
10.8.3 多个拦截器的顺序 268
10.9 国际化 271
10.9.1 国际化消息源 271
10.9.2 国际化解析器 273
10.9.3 国际化实例——SessionLocaleResolver 274
10.10 Spring MVC拾遗 278
10.10.1 @ResponseBody转换为JSON的秘密 278
10.10.2 重定向 279
10.10.3 操作会话对象 281
10.10.4 给控制器增加通知 284
10.10.5 获取请求头参数 286
第11章 构建REST风格网站 289
11.1 RESTful简述 289
11.1.1 REST名词解释 289
11.1.2 HTTP的动作 290
11.1.3 RESTful的一些误区 291
11.2 使用Spring MVC开发REST风格端点 291
11.2.1 Spring MVC整合REST 291
11.2.2 使用Spring开发REST风格的端点 292
11.2.3 使用@RestController 301
11.2.4 渲染结果 302
11.2.5 处理HTTP状态码、异常和响应头 304
11.3 客户端请求RestTemplate 309
11.3.1 使用RestTemplate请求后端 309
11.3.2 获取响应头、状态码和资源交换 311
第12章 安全——Spring Security 314
12.1 概述和简单安全认证 314
12.2 使用WebSecurityConfigurerAdapter自定义 317
12.3 自定义用户服务信息 318
12.3.1 使用内存签名服务 318
12.3.2 使用数据库定义用户认证服务 320
12.3.3 使用自定义用户认证服务 323
12.4 限制请求 325
12.4.1 配置请求路径访问权限 326
12.4.2 使用Spring表达式配置访问权限 328
12.4.3 强制使用HTTPS 329
12.4.3 防止跨站点请求伪造 330
12.5 用户认证功能 331
12.5.1 自定义登录页面 331
12.5.2 启用HTTP Basic认证 333
12.5.3 登出 334
第13章 学点Spring其他的技术 336
13.1 异步线程池 336
13.1.2 定义线程池和开启异步可用 337
13.1.2 异步实例 337
13.2 异步消息 339
13.2.1 JMS实例——ActiveMQ 340
13.2.2 使用AMQP——RabbitMQ 345
13.3 定时任务 349
13.4 WebSocket 应用 353
13.4.1 开发简易的WebSocket服务 353
13.4.2 使用STOMP 359
第14章 Spring 5新框架——WebFlux 369
14.1 基础概念 369
14.1.1 响应式编程的宣言 369
14.1.2 Reactor模型 370
14.1.3 Spring WebFlux的概述 371
14.1.4 WebHandler接口和运行流程 373
14.2 通过Spring MVC方式开发WebFlux服务端 375
14.2.1 开发持久层 375
14.2.2 开发服务层 377
14.2.3 开发控制层 378
14.2.4 配置服务 380
14.2.5客户端开发——WebClient 382
14.3 深入WebFlux服务端开发 386
14.3.1 类型转换器——Converter 387
14.3.2 验证器——Validator 388
14.3.3 访问静态资源 390
14.4 深入客户端开发 390
14.4.1 处理服务端错误和转换 391
14.4.3 设置请求头 393
14.5 使用路由函数方式开发WebFlux 394
14.5.1 开发处理器 394
14.5.2 开发请求路由 399
14.5.3 使用过滤器 401
第15章 实践一下——抢购商品 403
15.1 设计与开发 403
15.1.1 数据库表设计 403
15.1.2 使用MyBatis开发持久层 404
15.1.3 使用Spring开发业务层和控制层 407
15.1.4 测试和配置 410
15.2 高并发开发 412
15.2.1 超发现象 412
15.2.2 悲观锁 414
15.2.3 乐观锁 415
15.2.4 使用Redis处理高并发 421第16章 部署、测试和监控 428
16.1 部署和运行 428
16.1.1 打包 428
16.1.2 运行项目 430
16.1.3 热部署 432
16.2 测试 433
16.2.1 构建测试类 433
16.2.2 使用随机端口和REST风格测试 435
16.2.3 Mock测试 435
16.3 Actuator监控端点 437
16.4 HTTP监控 438
16.4.1 查看敏感信息 439
16.4.2 shutdown端点 441
16.4.3 配置端点 442
16.4.4 自定义端点 444
16.4.5 健康指标项 447
16.5 JMX监控 450
第17章 分布式开发——Spring Cloud 452
17.1 服务治理和服务发现——Eureka 454
17.1.1 配置服务治理节点 454
17.1.2 服务发现 456
17.1.3 配置多个服务治理中心节点 459
17.2 微服务之间的调用 462
17.2.1 Ribbon客户端负载均衡 462
17.2.1 Feign声明式调用 466
17.3 断路器——Hystrix 469
17.3.1 使用降级服务 470
17.3.1 启用Hystrix仪表盘 473
17.4 路由网关——Zuul 475
17.4.1 构建Zuul网关 476
17.4.2 使用过滤器 478
17.5 使用@SpringCloudApplication 482
附录 484
A.1 选择内嵌服务器 484
A.2 修改商标 484
A.3 深入Spring Boot自动装配 487